Plan Object

This section describes the purpose of the Plan object and its properties. Below you will find a general overview, followed by a detailed description of Plan Properties, as they appear in the various Plan categories (tabs).

 

A Plan is one of three objects that are ActiveBatch containers. The other two containers are Folder objects and the root of the Job Scheduler. These are the three places that store ActiveBatch objects created by a Job author.

 

A Plan typically consists of two or more related Jobs, although technically it can be used to store just one Job. In addition, all other object types can be added to a Plan (nested Plans, shared objects, and Folders). Using a Windows file system analogy, a Plan would be like a Windows folder, since an ActiveBatch Folder is where you store objects. However, a Plan is more than just a container, as outlined in the key points section below. It is not a requirement to create a Plan in ActiveBatch in order to run a Job. But many customers use Plans, since Plans allow you to create simple or complex workflows for related Jobs, where oftentimes you need to set the order in which the Jobs in the Plan will run. Jobs in a Plan can be set to run in parallel, when the Plan is triggered, or they can be set to run sequentially, one after another. It could also be a combination of both.

 

A key benefit when using Plans is you can quickly see and monitor all the related Jobs in the Plan (for example, in the Instances Pane pane and/or in the Daily Activity view) and check on their statuses (e.g. how they ran - successfully, etc.). For example, you may have 3 Jobs in a Plan. The first Job downloads a file from an FTP server, the second Job processes the data in the file, and the third Job archives the previously downloaded file. These Jobs will run sequentially. When the Jobs are done executing, the Plan is also marked complete.

 

To create a Plan, right-click on the desired container (Scheduler root, existing Folder or Plan) in the Object Navigation Pane, select New, then select Plan. When you’ve completed the Plan property settings, you must click the Save or the Save and Close button to save the Plan. Click the X on the tab of the New Plan if you wish to cancel the creation of the Plan. When you save the Plan, it will instantly appear in the Object Navigation pane (if auto refresh is enabled). To modify an existing Plan, right-click on the Plan in the Object Navigation pane, then select Properties.

 

Below are some key points about Plans:

 

  • Think of a Plan as a wrapper around your related Jobs and perhaps the shared objects used by the Plan and its Jobs. Placing shared objects within a Plan provides a form of isolation. For example, if you place a Queue or User Account object within a Plan, you eliminate its visibility outside the Plan. Users traversing the Object Navigation tree need to be granted List/Connect rights to see the contents of a Plan.

  • A Plan helps you see the related Jobs as a single unit, and their statuses after completion.  See the image below, which is a Plan named FTP BankA, depicted in the Daily Activity view. The Plan has been expanded to display its 2 Jobs. One of them succeeded, the other failed.

  • A Plan is a triggerable object, but it has no payload. Therefore, only its Jobs are sent to Execution AgentsClosed The Execution Agent ("Agent") is the component that runs ActiveBatch jobs. It must be installed and configured on a system that is specified in the Machine property of an Execution Queue object. The Job Scheduler uses the Queue's Machine property to determine what system to connect to in order to dispatch jobs. Most ActiveBatch environments have more than one system with an Agent installation. Which Agent to send the Job to is based on the Submission Queue that is assigned (associated) to each Job, a required Job property. to run. Plan instances will go into an executing state, but they only remain in that state while their underlying Jobs are active. The Jobs in the Plan can be set to run in a specific order, if desired.

  • You can set (define) variables on a Plan, and the child objects within the Plan that reference variables will be able to access them (the Plan variables will be within the child objects' scope). Plan variables can be passed to other related Jobs and Plans.

  • You can create a reference to a PlanClosed A Reference Plan points to an existing Plan. A Reference Plan is a triggerable object. When triggered, it will run the same Jobs that the Plan it points to runs. This allows for Plan reuse without having to copy and paste the Plan. If you have a Plan that you need to run in various workflows, it is recommended you create a Reference Plan rather than using the copy and paste option. The Reference Plan is recommended because if anything changes in the workflow of the Plan (e.g. another Job is added to the Plan, or an existing Job is modified, etc.), the Reference Plan doesn't require any changes, since it points to existing an Plan, and that existing Plan's Job(s) would be the only object(s) that would require changes.

  • You can set security on a Plan so that child objects can inherit security from the Plan.

  • You can set default policiesClosedA default policy allows you to preset a new object's properties to override factory default property values, and/or preset properties that are blank by default. See Default Policy for more details.  on a Plan.

  • You set audit policiesClosed An audit policy provides a way for a user to add additional audit information when working with ActiveBatch objects and/or instances. For example, an audit policy can be created that prompts an ActiveBatch user to enter a reason why they are modifying an object, or disabling an object, or manually triggering a Job or Plan. The reason entered is stored in the audit trail of the object or instance. For more details see Audit Policy. on a Plan.

  • Plans can be managed as a whole (as opposed to managing each Job within the Plan). For example, you can restart an existing Plan instance.

  • Plans share many of the same properties that Jobs have. For example, Plans (like Jobs) can be configured to:

    • Run on a schedule

    • Not run on a holiday

    • Trigger other Jobs or Plans when complete

    • Have alerts sent out (e.g. on Plan failure)

    • Adhere to SLA's (Service Level Agreements)

  • You can connect to a Plan using ActiveBatch's Virtual RootClosed Virtual root is an optional feature that allows you to connect to a Job Scheduler via a Folder (best practice) or Plan object, as opposed to connecting to the root of the Job Scheduler. When connected to a Virtual Root, the user's scope is limited. They will only see and have access to objects and instances that are child objects within the connection point. This feature can be used for security purposes, or simply to de-clutter a user's view, if they don't need to see or have access to containers that are not their concern.   feature, although as a best practice, it is recommended you use the Folder object instead.

 

Note: To learn about how to best set up objects in the Object Navigation pane, see this topic: Organizing ActiveBatch Objects

 

Note: The Plan object was introduced before the Folder object. This resulted in some customers occasionally using a Plan object strictly for organizational purposes, not to be triggered. After the introduction of the Folder object, using the Plan in this manner was no longer recommended. As a best practice, use Plans to create triggerable workflows, and use Folders for organizational purposes.

 

Plan Properties